iT邦幫忙

0

用 Medusa v2 + Next.js 自行架設多語系 eSIM 商店的心得

  • 分享至 

  • xImage
  •  

我是在東京工作的越南工程師,2013 年起住在日本。工作之餘經營一個小型網路商店 shibaSIM,賣旅遊 eSIM 和給在日外國人的月租 SIM。這篇分享整個系統怎麼搭,以及到目前為止學到的事。

技術架構

  • 後端:Medusa v2(headless 電商框架)
  • 前端:Next.js App Router
  • 資料庫:PostgreSQL
  • 主機:自行維運的 Linux 伺服器,前面接 CDN
  • 金流:信用卡走 Stripe,越南客人另外提供 QR 銀行轉帳

Medusa 直接提供購物車、訂單、折扣碼和後台,eSIM 特有的部分(QR 碼發送、多語系頁面)再自己往上加。

學到的幾件事

1. 在地化不只是翻譯。 網站有越南文、英文、尼泊爾文、僧伽羅文、孟加拉文、印尼文、繁體中文等頁面。每個族群搜尋用的字、擔心的事情都不一樣,所以每個語系都是針對那個族群重寫,而不是翻譯同一份稿子。技術上我把各語系的文案拆成獨立模組(例如 resident-copy/zh-tw.ts),頁面元件共用,內容分開維護。

2. 用客人真正會看的管道交貨。 很多年長的越南客人很少看 email,但每天都用 Zalo,所以 eSIM 的 QR 碼除了 email,也可以透過 Zalo 發送。

3. 自動交貨,但 QR 碼絕對不能重複使用。 QR 碼從一個庫存池取出,一旦發出就標記為已使用,用資料庫交易鎖住,避免同一張碼發給兩個人。

4. 自架很便宜,但維運全在自己身上。 部署、備份、監控都要自己來。我用一個部署腳本搭配部署紀錄,出問題時比較好回溯;異地備份是下一個要做的事。

多語系 SEO 的小提醒

  • 每個語系用同一網域的子目錄(/zh-tw/、/id/),並正確設定 hreflang。
  • sitemap 只列出真的有該語系內容的頁面,避免一堆空殼頁被當成重複內容。

如果有興趣,繁體中文的頁面在這裡:shibaSIM 在日本辦 SIM 卡。歡迎交流 Medusa 或 Next.js 多語系的問題。

(本文在 AI 協助下撰寫,內容由作者確認。)


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言